package br.ifpi.pc.sbcf.entity;

public class CalculadoraDeSalario {

	public double calculaSalario(Funcionario funcionario) {
		if (funcionario.getCargo().equals(Cargo.DESENVOLVEDOR)) {
			if (funcionario.getSalarioBase() >= 3000) {
				return funcionario.getSalarioBase() * 0.8;
			}
			return funcionario.getSalarioBase() * 0.9;
			
		} else if (funcionario.getCargo().equals(Cargo.DBA) || funcionario.getCargo().equals(Cargo.TESTADOR)) {
			if (funcionario.getSalarioBase() < 2000) {
				return funcionario.getSalarioBase() * 0.85;
			}
			return funcionario.getSalarioBase() * 0.75;
		
		} else if (funcionario.getCargo().equals(Cargo.GERENTE)){
			if(funcionario.getSalarioBase() >= 5000){
				return funcionario.getSalarioBase() * 0.8;
			}
			return funcionario.getSalarioBase() * 0.7;
		}
		throw new RuntimeException("Funcionario invalido!");
	}
}
